/**
 * 
 */
package org.vsg.common.pagination.datatrans;

import java.util.Hashtable;

import org.vsg.common.pagination.PaginationException;

/**
 * @author Bill Vison
 *
 */
public abstract class AbstractDataTransformer implements DataTransformer {

	protected Hashtable confValues = new Hashtable();
	
	protected Hashtable userValues = new Hashtable();	
	
	/* (non-Javadoc)
	 * @see org.vsg.commons.util.pagination.transformer.DataTransformer#getConfigurationValue(java.lang.String)
	 */
	public Object getImplicitValue(String key) {
		// TODO Auto-generated method stub
		return confValues.get(key);
	}

	/* (non-Javadoc)
	 * @see org.vsg.commons.util.pagination.transformer.DataTransformer#getValue(java.lang.String)
	 */
	public Object getValue(String key) {
		// TODO Auto-generated method stub
		return userValues.get(key);
	}

	public void setValue(String name , Object value) {
		this.userValues.put(name , value);
	}
	
	public void setImplicitValue(String name , Object value) {
		this.confValues.put(name , value);
	}	
	
	/**
	 * run inititalize method after property set
	 *
	 */
	public abstract void initAfterSet() throws PaginationException;	
	
}
